<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>关于队列</title>
</head>

<body>
    
    <script>
        /**
            队列是单向操作，而且是先进先出，所以在队尾进行添加元素，队头移除元素。
            用数组来理解就是，从数组尾部添加，数组头部删除
            这样才能做大先进先出。
        */
        class Queue{
            item=[];
            // 给队列队尾添加元素
            enqueue(val){
                return this.item.push(val);
            };
            // 给队列队头删除元素
            dequeue(val){
                return this.item.shift(val);
            };
            // 返回队列第一个元素
            front(val){
                return this.item[0];
            };
            // 判断队列中是否含有元素
            isEmpty(val){
                return this.item.length;
            };
            // 判断队列的元素个数
            size(){
                return this.item.length;
            };
        }
    </script>
</body>

</html>